package views

import (
	"database/sql/driver"
)

type Station_View struct {
	StationNo string `json:"stationno"` // 用户编码
	Time      int64  `json:"time"`      // 用户编码
	Status    int    `json:"status"`    // 纬度
	PerTime   int64  `json:"pertime"`   // 纬度
	Value     int    `json:"value"`     // 经度
	Value1    int    `json:"value1"`    // 经度
}

type Station2_View struct {
	StationNo  string  `json:"stationno"`  // 站点编号
	Time       int64   `json:"time"`       // 最近更新时间
	Status     int     `json:"status"`     // 最新状态
	PerTime    int64   `json:"pertime"`    // 纬度
	Value      int     `json:"value"`      // 最新值
	Value1     int     `json:"value1"`     // 经度
	Efficiency float64 `json:"efficiency"` //指定时间段内的效率
	LastTime   int64   `json:"lasttime"`   // 状态持续时间
}

type Station_Data struct {
	StationNo  string `json:"stationno"`  // 站点编号
	Time       int64  `json:"time"`       // 最近更新时间
	Status     int    `json:"status"`     // 最新状态
	Value      int    `json:"value"`      // 最新值
	Value1     int    `json:"value1"`     // 经度
	Efficiency []int  `json:"efficiency"` //指定时间段内的效率
	PerTime    int64  `json:"pertime"`    // 状态持续时间
}

type RunState_View struct {
	StationNo string `json:"stationno"` // 用户编码
	Time      int    `json:"stoptime"`  // 用户编码
	Status    int    `json:"stoptimes"` // 纬度
	Value     int    `json:"value"`     // 经度
	Value1    int    `json:"value1"`    // 经度
}

type MidWay_View struct {
	MidwayNo string         `json:"midwayno"` // 状态时间
	Stations []Station_View `json:"stations"` // 状态时间
}

type MidWay2_View struct {
	MidwayNo string          `json:"midwayno"` // 中层编号
	Stations []Station2_View `json:"stations"` // 站点实时数据
}

type Efficency_View struct {
	StartTime    int64 `json:"starttime"`    // 站点编号
	EndTime      int64 `json:"endtime"`      // 最近更新时间
	Stoptimes23  int   `json:"stoptimes23"`  // 最新状态
	Stoptimes27  int   `json:"stoptimes27"`  // 最新状态
	Stoptimes29  int   `json:"stoptimes29"`  // 最新状态
	Stoptimes31  int   `json:"stoptimes31"`  // 最新状态
	Stoptimes101 int   `json:"stoptimes101"` // 最新状态
	Stoptimes201 int   `json:"stoptimes201"` // 最新状态
	Speed        int   `json:"speed"`        // 最新状态
	Efficiency   int64 `json:"efficiency"`   //指定时间段内的效率
	StopTime     int64 `json:"stoptime"`     // 最新状态
}

type Station3_View struct {
	StationNo  string            `json:"stationno"`  // 站点编号
	Efficencys []*Efficency_View `json:"efficencys"` // 最近更新时间
}
type Station4_View struct {
	StationNo string `json:"stationno"` // 站点编号
	PackSize  int    `json:"packsize"`  // 最近更新时间
}

func NewStation3View(stationno string) *Station3_View {
	var result = new(Station3_View)
	result.Efficencys = make([]*Efficency_View, 0)
	result.StationNo = stationno
	return result
}

type MidWay3_View struct {
	MidwayNo string          `json:"midwayno"` // 中层编号
	Stations []Station3_View `json:"stations"` // 站点实时数据
}

type Packet_View struct {
	Value    string `json:"value"`    // 状态时间
	MidwayNo string `json:"midwayno"` // 状态时间
	Time     int    `json:"time"`     // 状态时间
	Source   string `json:"source"`   // 状态时间
}

type GXBC_Result_View struct {
	CBY    driver.Value `json:"cby"`
	BCH    driver.Value `json:"bch"`
	BCMS   driver.Value `json:"bcms"`
	BCYHS  driver.Value `json:"bcyhs"`
	BCYCHS driver.Value `json:"bcychs"`
}

type MidWayInfo_View struct {
	MidwayNo    string   `json:"midwayno"`    // 中层编号
	Stations    []string `json:"stations"`    // 站点实时数据
	StationSize int      `json:"stationsize"` // 站点实时数据
}

type MidWays_View struct {
	MidWays     []MidWayInfo_View `json:"midways"`     // 站点实时数据
	MidWaySize  int               `json:"midwaysize"`  // 站点实时数据
	StationSize int               `json:"stationsize"` // 站点实时数据
}
